home *** CD-ROM | disk | FTP | other *** search
/ Apple WWDC 1996 / WWDC96_1996 (CD).toast / Technology Materials / MacOS 8 Resources / Developer Tools / Mac OS 8 Interfaces & Libraries / Interfaces / AIncludes / Script.a < prev    next >
Text File  |  1996-05-01  |  41KB  |  1,115 lines

  1. ;
  2. ;    File:        Script.a
  3. ;
  4. ;    Contains:    Script Manager interfaces
  5. ;
  6. ;    Version:    Technology:    System 7.5
  7. ;                Release:    Universal Interfaces 3.0d3 on Copland DR1
  8. ;
  9. ;    Copyright:    © 1984-1996 by Apple Computer, Inc.  All rights reserved.
  10. ;
  11. ;    Bugs?:        If you find a problem with this file, send the file and version
  12. ;                information (from above) and the problem description to:
  13. ;
  14. ;                    Internet:    apple.bugs@applelink.apple.com
  15. ;                    AppleLink:    APPLE.BUGS
  16. ;
  17. ;
  18.     IF &TYPE('__SCRIPT__') = 'UNDEFINED' THEN
  19. __SCRIPT__ SET 1
  20.  
  21.     IF &TYPE('__TYPES__') = 'UNDEFINED' THEN
  22.     include 'Types.a'
  23.     ENDIF
  24.     IF &TYPE('__QUICKDRAW__') = 'UNDEFINED' THEN
  25.     include 'Quickdraw.a'
  26.     ENDIF
  27.     IF &TYPE('__INTLRESOURCES__') = 'UNDEFINED' THEN
  28.     include 'IntlResources.a'
  29.     ENDIF
  30.     IF &TYPE('__EVENTS__') = 'UNDEFINED' THEN
  31.     include 'Events.a'
  32.     ENDIF
  33.  
  34.                                                             ; Script System constants 
  35. smSystemScript                    EQU        -1                    ;designates system script.
  36. smCurrentScript                    EQU        -2                    ;designates current font script.
  37. smAllScripts                    EQU        -3                    ;designates any script    
  38. smRoman                            EQU        0                    ;Roman
  39. smJapanese                        EQU        1                    ;Japanese
  40. smTradChinese                    EQU        2                    ;Traditional Chinese
  41. smKorean                        EQU        3                    ;Korean
  42. smArabic                        EQU        4                    ;Arabic
  43. smHebrew                        EQU        5                    ;Hebrew
  44. smGreek                            EQU        6                    ;Greek
  45. smCyrillic                        EQU        7                    ;Cyrillic
  46. smRSymbol                        EQU        8                    ;Right-left symbol
  47. smDevanagari                    EQU        9                    ;Devanagari
  48. smGurmukhi                        EQU        10                    ;Gurmukhi
  49. smGujarati                        EQU        11                    ;Gujarati
  50. smOriya                            EQU        12                    ;Oriya
  51. smBengali                        EQU        13                    ;Bengali
  52. smTamil                            EQU        14                    ;Tamil
  53. smTelugu                        EQU        15                    ;Telugu
  54. smKannada                        EQU        16                    ;Kannada/Kanarese
  55. smMalayalam                        EQU        17                    ;Malayalam
  56.  
  57. smSinhalese                        EQU        18                    ;Sinhalese
  58. smBurmese                        EQU        19                    ;Burmese
  59. smKhmer                            EQU        20                    ;Khmer/Cambodian
  60. smThai                            EQU        21                    ;Thai
  61. smLaotian                        EQU        22                    ;Laotian
  62. smGeorgian                        EQU        23                    ;Georgian
  63. smArmenian                        EQU        24                    ;Armenian
  64. smSimpChinese                    EQU        25                    ;Simplified Chinese
  65. smTibetan                        EQU        26                    ;Tibetan
  66. smMongolian                        EQU        27                    ;Mongolian
  67. smGeez                            EQU        28                    ;Geez/Ethiopic
  68. smEthiopic                        EQU        28                    ;Synonym for smGeez
  69. smEastEurRoman                    EQU        29                    ;Synonym for smSlavic
  70. smCentralEuroRoman                EQU        29                    ; another synonym 
  71. smVietnamese                    EQU        30                    ;Vietnamese
  72. smExtArabic                        EQU        31                    ;extended Arabic
  73. smUninterp                        EQU        32                    ;uninterpreted symbols, e.g. palette symbols
  74. smKlingon                        EQU        32                    ;Klingon
  75.                                                             ;Obsolete names for script systems (kept for backward compatibility)
  76. smChinese                        EQU        2                    ;(use smTradChinese or smSimpChinese)
  77. smRussian                        EQU        7                    ;(old name for smCyrillic)
  78.                                                             ; smMaldivian = 25;         (no more smMaldivian!)
  79. smAmharic                        EQU        28                    ;(old name for smGeez)
  80. smSlavic                        EQU        29                    ;(old name for smEastEurRoman)
  81.  
  82. smSindhi                        EQU        31                    ;(old name for smExtArabic)
  83.                                                             ; Language Codes 
  84. langEnglish                        EQU        0                    ; smRoman script 
  85. langFrench                        EQU        1                    ; smRoman script 
  86. langGerman                        EQU        2                    ; smRoman script 
  87. langItalian                        EQU        3                    ; smRoman script 
  88. langDutch                        EQU        4                    ; smRoman script 
  89. langSwedish                        EQU        5                    ; smRoman script 
  90. langSpanish                        EQU        6                    ; smRoman script 
  91. langDanish                        EQU        7                    ; smRoman script 
  92. langPortuguese                    EQU        8                    ; smRoman script 
  93. langNorwegian                    EQU        9                    ; smRoman script 
  94. langHebrew                        EQU        10                    ; smHebrew script 
  95. langJapanese                    EQU        11                    ; smJapanese script 
  96. langArabic                        EQU        12                    ; smArabic script 
  97. langFinnish                        EQU        13                    ; smRoman script 
  98. langGreek                        EQU        14                    ; should be smGreek script; current systems actually use smRoman (11/95) 
  99. langIcelandic                    EQU        15                    ; variant smRoman script 
  100. langMaltese                        EQU        16                    ; variant smRoman script 
  101. langTurkish                        EQU        17                    ; variant smRoman script 
  102. langCroatian                    EQU        18                    ; Serbo-Croatian in variant Roman script 
  103. langTradChinese                    EQU        19                    ; Chinese in traditional characters 
  104.  
  105. langUrdu                        EQU        20                    ; smArabic script 
  106. langHindi                        EQU        21                    ; smDevanagari script 
  107. langThai                        EQU        22                    ; smThai script 
  108. langKorean                        EQU        23                    ; smKorean script 
  109. langLithuanian                    EQU        24                    ; smCentralEuroRoman script 
  110. langPolish                        EQU        25                    ; smCentralEuroRoman script 
  111. langHungarian                    EQU        26                    ; smCentralEuroRoman script 
  112. langEstonian                    EQU        27                    ; smCentralEuroRoman script 
  113. langLettish                        EQU        28                    ; smCentralEuroRoman script 
  114. langLatvian                        EQU        28                    ; Synonym for langLettish 
  115. langSaamisk                        EQU        29                    ; lang. of the Sami/Lapp people of Scand. (11/95, no current script supports this) 
  116. langFaeroese                    EQU        30                    ; smRoman script 
  117. langFarsi                        EQU        31                    ; smArabic script 
  118. langPersian                        EQU        31                    ; Synonym for langFarsi 
  119. langRussian                        EQU        32                    ; smCyrillic script 
  120. langSimpChinese                    EQU        33                    ; Chinese in simplified characters 
  121. langFlemish                        EQU        34                    ; smRoman script 
  122. langIrish                        EQU        35                    ; smRoman script 
  123. langAlbanian                    EQU        36                    ; smRoman script 
  124.  
  125. langRomanian                    EQU        37                    ; variant smRoman script (11/95) <22> 
  126. langCzech                        EQU        38                    ; smCentralEuroRoman script 
  127. langSlovak                        EQU        39                    ; smCentralEuroRoman script 
  128. langSlovenian                    EQU        40                    ; uses Croatian variant of smRoman script (11/95) <22> 
  129. langYiddish                        EQU        41                    ; smHebrew script 
  130. langSerbian                        EQU        42                    ; Serbo-Croatian in smCyrillic script 
  131. langMacedonian                    EQU        43                    ; smCyrillic script 
  132. langBulgarian                    EQU        44                    ; variant smCyrillic script (11/95) <22> 
  133. langUkrainian                    EQU        45                    ; variant smCyrillic script (11/95) <22> 
  134. langByelorussian                EQU        46                    ; smCyrillic script 
  135. langUzbek                        EQU        47                    ; variant smCyrillic script (11/95) <22> 
  136. langKazakh                        EQU        48                    ; variant smCyrillic script (11/95) <22> 
  137. langAzerbaijani                    EQU        49                    ; Azerbaijani in variant smCyrillic script (11/95) <22> 
  138. langAzerbaijanAr                EQU        50                    ; Azerbaijani in smArabic script (Iran) 
  139. langArmenian                    EQU        51                    ; smArmenian script 
  140. langGeorgian                    EQU        52                    ; smGeorgian script 
  141. langMoldavian                    EQU        53                    ; smCyrillic script 
  142. langKirghiz                        EQU        54                    ; variant smCyrillic script (11/95) <22> 
  143. langTajiki                        EQU        55                    ; variant smCyrillic script (11/95) <22> 
  144. langTurkmen                        EQU        56                    ; variant smCyrillic script (11/95) <22> 
  145.  
  146. langMongolian                    EQU        57                    ; Mongolian in smMongolian script 
  147. langMongolianCyr                EQU        58                    ; Mongolian in variant smCyrillic script (11/95) <22> 
  148. langPashto                        EQU        59                    ; smExtArabic script (11/95) <22> 
  149. langKurdish                        EQU        60                    ; smArabic script 
  150. langKashmiri                    EQU        61                    ; smExtArabic script (11/95) <22> 
  151. langSindhi                        EQU        62                    ; smExtArabic script (11/95) <22> 
  152. langTibetan                        EQU        63                    ; smTibetan script 
  153. langNepali                        EQU        64                    ; smDevanagari script 
  154. langSanskrit                    EQU        65                    ; smDevanagari script 
  155. langMarathi                        EQU        66                    ; smDevanagari script 
  156. langBengali                        EQU        67                    ; smBengali script 
  157. langAssamese                    EQU        68                    ; smBengali script 
  158. langGujarati                    EQU        69                    ; smGujarati script 
  159. langPunjabi                        EQU        70                    ; smGurmukhi script 
  160. langOriya                        EQU        71                    ; smOriya script 
  161. langMalayalam                    EQU        72                    ; smMalayalam script 
  162. langKannada                        EQU        73                    ; smKannada script 
  163. langTamil                        EQU        74                    ; smTamil script 
  164. langTelugu                        EQU        75                    ; smTelugu script 
  165. langSinhalese                    EQU        76                    ; smSinhalese script 
  166.  
  167. langBurmese                        EQU        77                    ; smBurmese script 
  168. langKhmer                        EQU        78                    ; smKhmer script 
  169. langLao                            EQU        79                    ; smLaotian script 
  170. langVietnamese                    EQU        80                    ; smVietnamese script 
  171. langIndonesian                    EQU        81                    ; smRoman script 
  172. langTagalog                        EQU        82                    ; smRoman script 
  173. langMalayRoman                    EQU        83                    ; Malay in smRoman script 
  174. langMalayArabic                    EQU        84                    ; Malay in smArabic script 
  175. langAmharic                        EQU        85                    ; smEthiopic script 
  176. langTigrinya                    EQU        86                    ; smEthiopic script 
  177. langGalla                        EQU        87                    ; smEthiopic script 
  178. langOromo                        EQU        87                    ; Synonym for langGalla 
  179. langSomali                        EQU        88                    ; smRoman script 
  180. langSwahili                        EQU        89                    ; smRoman script 
  181. langRuanda                        EQU        90                    ; smRoman script 
  182. langRundi                        EQU        91                    ; smRoman script 
  183. langChewa                        EQU        92                    ; smRoman script 
  184. langMalagasy                    EQU        93                    ; smRoman script 
  185. langEsperanto                    EQU        94                    ; extended Roman script 
  186. langWelsh                        EQU        128                    ; smRoman script 
  187.  
  188. langBasque                        EQU        129                    ; smRoman script 
  189. langCatalan                        EQU        130                    ; smRoman script 
  190. langLatin                        EQU        131                    ; smRoman script 
  191. langQuechua                        EQU        132                    ; smRoman script 
  192. langGuarani                        EQU        133                    ; smRoman script 
  193. langAymara                        EQU        134                    ; smRoman script 
  194. langTatar                        EQU        135                    ; smCyrillic script 
  195. langUighur                        EQU        136                    ; smArabic script 
  196. langDzongkha                    EQU        137                    ; (lang of Bhutan) smTibetan script 
  197. langJavaneseRom                    EQU        138                    ; Javanese in smRoman script 
  198. langSundaneseRom                EQU        139                    ; Sundanese in smRoman script 
  199. langGalician                    EQU        140                    ; smRoman script 
  200.                                                             ; Obsolete names, kept for backward compatibility 
  201. langPortugese                    EQU        8                    ; old misspelled version, kept for compatibility 
  202. langMalta                        EQU        16                    ; old misspelled version, kept for compatibility 
  203. langYugoslavian                    EQU        18                    ; (use langCroatian, langSerbian, etc.) 
  204. langChinese                        EQU        19                    ; (use langTradChinese or langSimpChinese) 
  205. langLapponian                    EQU        29                    ; Synonym for langSaamisk, not correct name 
  206. langLappish                        EQU        29                    ; Synonym for langSaamisk 
  207.  
  208.                                                             ; Regional version codes 
  209. verUS                            EQU        0
  210. verFrance                        EQU        1
  211. verBritain                        EQU        2
  212. verGermany                        EQU        3
  213. verItaly                        EQU        4
  214. verNetherlands                    EQU        5
  215. verFrBelgiumLux                    EQU        6                    ; French for Belgium & Luxembourg 
  216. verSweden                        EQU        7
  217. verSpain                        EQU        8
  218. verDenmark                        EQU        9
  219. verPortugal                        EQU        10
  220. verFrCanada                        EQU        11
  221. verNorway                        EQU        12
  222.  
  223. verIsrael                        EQU        13
  224. verJapan                        EQU        14
  225. verAustralia                    EQU        15
  226. verArabic                        EQU        16                    ; synonym for verArabia 
  227. verFinland                        EQU        17
  228. verFrSwiss                        EQU        18                    ; French Swiss 
  229. verGrSwiss                        EQU        19                    ; German Swiss 
  230. verGreece                        EQU        20
  231. verIceland                        EQU        21
  232. verMalta                        EQU        22
  233. verCyprus                        EQU        23
  234. verTurkey                        EQU        24
  235. verYugoCroatian                    EQU        25                    ; Croatian system for Yugoslavia 
  236. verNetherlandsComma                EQU        26
  237. verBelgiumLuxPoint                EQU        27
  238. verCanadaComma                    EQU        28
  239. verCanadaPoint                    EQU        29
  240. vervariantPortugal                EQU        30
  241. vervariantNorway                EQU        31
  242. vervariantDenmark                EQU        32
  243. verIndiaHindi                    EQU        33                    ; Hindi system for India 
  244. verPakistan                        EQU        34
  245. verTurkishModified                EQU        35
  246. verItalianSwiss                    EQU        36
  247. verRomania                        EQU        39
  248. verGreekAncient                    EQU        40
  249. verLithuania                    EQU        41
  250. verPoland                        EQU        42
  251. verHungary                        EQU        43
  252. verEstonia                        EQU        44
  253. verLatvia                        EQU        45
  254.  
  255. verLapland                        EQU        46
  256. verFaeroeIsl                    EQU        47
  257. verIran                            EQU        48
  258. verRussia                        EQU        49
  259. verIreland                        EQU        50                    ; English-language version for Ireland 
  260. verKorea                        EQU        51
  261. verChina                        EQU        52
  262. verTaiwan                        EQU        53
  263. verThailand                        EQU        54
  264. verCzech                        EQU        56
  265. verSlovak                        EQU        57
  266. verGenericFE                    EQU        58
  267. verMagyar                        EQU        59
  268. verBengali                        EQU        60
  269. verByeloRussian                    EQU        61
  270. verUkrania                        EQU        62
  271. verUkraine                        EQU        62
  272. verAlternateGr                    EQU        64
  273. verCroatia                        EQU        68
  274. verBrazil                        EQU        71
  275. verBulgaria                        EQU        72
  276. verCatalonia                    EQU        73
  277.  
  278. minCountry                        EQU        0
  279. maxCountry                        EQU        73                    ; changed from verCroatia when additional enums added 
  280. ;  Obsolete region code names, kept for backward compatibility 
  281.  
  282. verBelgiumLux                    EQU        6                    ; (use verFrBelgiumLux instead, less ambiguous) 
  283. verArabia                        EQU        16
  284. verYugoslavia                    EQU        25                    ; (use verYugoCroatian instead, less ambiguous) 
  285. verIndia                        EQU        33                    ; (use verIndiaHindi instead, less ambiguous) 
  286.                                                             ; Calendar Codes 
  287. calGregorian                    EQU        0
  288. calArabicCivil                    EQU        1
  289. calArabicLunar                    EQU        2
  290. calJapanese                        EQU        3
  291. calJewish                        EQU        4
  292. calCoptic                        EQU        5
  293. calPersian                        EQU        6                    ; Integer Format Codes 
  294. intWestern                        EQU        0
  295. intArabic                        EQU        1
  296. intRoman                        EQU        2
  297. intJapanese                        EQU        3
  298. intEuropean                        EQU        4
  299. intOutputMask                    EQU        $8000                ; CharByte byte types 
  300. smSingleByte                    EQU        0
  301. smFirstByte                        EQU        -1
  302. smLastByte                        EQU        1
  303. smMiddleByte                    EQU        2                    ; CharType field masks 
  304. smcTypeMask                        EQU        $000F
  305. smcReserved                        EQU        $00F0
  306.  
  307. smcClassMask                    EQU        $0F00
  308. smcOrientationMask                EQU        $1000                ;two-byte script glyph orientation
  309. smcRightMask                    EQU        $2000
  310. smcUpperMask                    EQU        $4000
  311. smcDoubleMask                    EQU        $8000                ; Basic CharType character types 
  312. smCharPunct                        EQU        $0000
  313. smCharAscii                        EQU        $0001
  314. smCharEuro                        EQU        $0007
  315. smCharExtAscii                    EQU        $0007                ; More correct synonym for smCharEuro 
  316.                                                             ; Additional CharType character types for script systems 
  317. smCharKatakana                    EQU        $0002                ;Japanese Katakana
  318. smCharHiragana                    EQU        $0003                ;Japanese Hiragana
  319. smCharIdeographic                EQU        $0004                ;Hanzi, Kanji, Hanja
  320. smCharTwoByteGreek                EQU        $0005                ;2-byte Greek in Far East systems
  321. smCharTwoByteRussian            EQU        $0006                ;2-byte Cyrillic in Far East systems
  322. smCharBidirect                    EQU        $0008                ;Arabic/Hebrew
  323. smCharContextualLR                EQU        $0009                ;Contextual left-right: Thai, Indic scripts
  324. smCharNonContextualLR            EQU        $000A                ;Non-contextual left-right: Cyrillic, Greek
  325. smCharHangul                    EQU        $000C                ;Korean Hangul
  326. smCharJamo                        EQU        $000D                ;Korean Jamo
  327. smCharBopomofo                    EQU        $000E                ;Chinese Bopomofo
  328. smCharGanaKana                    EQU        $000F                ;Shared for Japanese Hiragana & Katakana
  329.                                                             ; old names for some of above, for backward compatibility 
  330. smCharFISKana                    EQU        $0002                ;Katakana
  331. smCharFISGana                    EQU        $0003                ;Hiragana
  332. smCharFISIdeo                    EQU        $0004                ;Hanzi, Kanji, Hanja
  333.  
  334. smCharFISGreek                    EQU        $0005                ;2-byte Greek in Far East systems
  335. smCharFISRussian                EQU        $0006                ;2-byte Cyrillic in Far East systems
  336.                                                             ; CharType classes for punctuation (smCharPunct) 
  337. smPunctNormal                    EQU        $0000
  338. smPunctNumber                    EQU        $0100
  339. smPunctSymbol                    EQU        $0200
  340. smPunctBlank                    EQU        $0300                ; Additional CharType classes for punctuation in two-byte systems 
  341. smPunctRepeat                    EQU        $0400                ; repeat marker 
  342. smPunctGraphic                    EQU        $0500                ; line graphics 
  343.                                                             ; CharType Katakana and Hiragana classes for two-byte systems 
  344. smKanaSmall                        EQU        $0100                ;small kana character
  345. smKanaHardOK                    EQU        $0200                ;can have dakuten
  346. smKanaSoftOK                    EQU        $0300                ;can have dakuten or han-dakuten
  347.                                                             ; CharType Ideographic classes for two-byte systems 
  348. smIdeographicLevel1                EQU        $0000                ;level 1 char
  349. smIdeographicLevel2                EQU        $0100                ;level 2 char
  350. smIdeographicUser                EQU        $0200                ;user char
  351.                                                             ; old names for above, for backward compatibility 
  352. smFISClassLvl1                    EQU        $0000                ;level 1 char
  353. smFISClassLvl2                    EQU        $0100                ;level 2 char
  354. smFISClassUser                    EQU        $0200                ;user char
  355.                                                             ; CharType Jamo classes for Korean systems 
  356. smJamoJaeum                        EQU        $0000                ;simple consonant char
  357. smJamoBogJaeum                    EQU        $0100                ;complex consonant char
  358. smJamoMoeum                        EQU        $0200                ;simple vowel char
  359.  
  360. smJamoBogMoeum                    EQU        $0300                ;complex vowel char
  361.                                                             ; CharType glyph orientation for two-byte systems 
  362. smCharHorizontal                EQU        $0000                ; horizontal character form, or for both 
  363. smCharVertical                    EQU        $1000                ; vertical character form 
  364.                                                             ; CharType directions 
  365. smCharLeft                        EQU        $0000
  366. smCharRight                        EQU        $2000                ; CharType case modifers 
  367. smCharLower                        EQU        $0000
  368. smCharUpper                        EQU        $4000                ; CharType character size modifiers (1 or multiple bytes). 
  369. smChar1byte                        EQU        $0000
  370. smChar2byte                        EQU        $8000                ; TransliterateText target types for Roman 
  371. smTransAscii                    EQU        0                    ;convert to ASCII
  372. smTransNative                    EQU        1                    ;convert to font script
  373. smTransCase                        EQU        $FE                    ;convert case for all text
  374. smTransSystem                    EQU        $FF                    ;convert to system script
  375.                                                             ; TransliterateText target types for two-byte scripts 
  376. smTransAscii1                    EQU        2                    ;1-byte Roman
  377. smTransAscii2                    EQU        3                    ;2-byte Roman
  378. smTransKana1                    EQU        4                    ;1-byte Japanese Katakana
  379. smTransKana2                    EQU        5                    ;2-byte Japanese Katakana
  380.  
  381. smTransGana2                    EQU        7                    ;2-byte Japanese Hiragana (no 1-byte Hiragana)
  382. smTransHangul2                    EQU        8                    ;2-byte Korean Hangul
  383. smTransJamo2                    EQU        9                    ;2-byte Korean Jamo
  384. smTransBopomofo2                EQU        10                    ;2-byte Chinese Bopomofo
  385.                                                             ; TransliterateText target modifiers 
  386. smTransLower                    EQU        $4000                ;target becomes lowercase
  387. smTransUpper                    EQU        $8000                ;target becomes uppercase
  388.                                                             ; TransliterateText resource format numbers 
  389. smTransRuleBaseFormat            EQU        1                    ;Rule based trsl resource format 
  390. smTransHangulFormat                EQU        2                    ;Table based Hangul trsl resource format
  391.                                                             ; TransliterateText property flags 
  392. smTransPreDoubleByting            EQU        1                    ;Convert all text to double byte before transliteration
  393. smTransPreLowerCasing            EQU        2                    ;Convert all text to lower case before transliteration
  394.                                                             ; TransliterateText source mask - general 
  395. smMaskAll                        EQU        $FFFFFFFF            ;Convert all text
  396.                                                             ; TransliterateText source masks 
  397. smMaskAscii                        EQU        $00000001            ;2^smTransAscii
  398. smMaskNative                    EQU        $00000002            ;2^smTransNative
  399.                                                             ; TransliterateText source masks for two-byte scripts 
  400. smMaskAscii1                    EQU        $00000004            ;2^smTransAscii1
  401. smMaskAscii2                    EQU        $00000008            ;2^smTransAscii2
  402. smMaskKana1                        EQU        $00000010            ;2^smTransKana1
  403. smMaskKana2                        EQU        $00000020            ;2^smTransKana2
  404. smMaskGana2                        EQU        $00000080            ;2^smTransGana2
  405. smMaskHangul2                    EQU        $00000100            ;2^smTransHangul2
  406. smMaskJamo2                        EQU        $00000200            ;2^smTransJamo2
  407. smMaskBopomofo2                    EQU        $00000400            ;2^smTransBopomofo2
  408.  
  409.                                                             ; Result values from GetScriptManagerVariable and SetScriptManagerVariable calls. 
  410. smNotInstalled                    EQU        0                    ;routine not available in script
  411. smBadVerb                        EQU        -1                    ;Bad verb passed to a routine
  412. smBadScript                        EQU        -2                    ;Bad script code passed to a routine
  413.  
  414.                                                             ; Values for script redraw flag. 
  415. smRedrawChar                    EQU        0                    ;Redraw character only
  416. smRedrawWord                    EQU        1                    ;Redraw entire word (2-byte systems)
  417. smRedrawLine                    EQU        -1                    ;Redraw entire line (bidirectional systems)
  418.                                                             ; GetScriptManagerVariable and SetScriptManagerVariable verbs 
  419. smVersion                        EQU        0                    ;Script Manager version number
  420. smMunged                        EQU        2                    ;Globals change count
  421. smEnabled                        EQU        4                    ;Count of enabled scripts, incl Roman
  422. smBidirect                        EQU        6                    ;At least one bidirectional script
  423. smFontForce                        EQU        8                    ;Force font flag
  424. smIntlForce                        EQU        10                    ;Force intl flag
  425. smForced                        EQU        12                    ;Script was forced to system script
  426. smDefault                        EQU        14                    ;Script was defaulted to Roman script
  427. smPrint                            EQU        16                    ;Printer action routine
  428. smSysScript                        EQU        18                    ;System script
  429. smLastScript                    EQU        20                    ;Last keyboard script
  430. smKeyScript                        EQU        22                    ;Keyboard script
  431. smSysRef                        EQU        24                    ;System folder refNum
  432. smKeyCache                        EQU        26                    ;obsolete
  433. smKeySwap                        EQU        28                    ;Swapping table handle
  434. smGenFlags                        EQU        30                    ;General flags long
  435. smOverride                        EQU        32                    ;Script override flags
  436.  
  437. smCharPortion                    EQU        34                    ;Ch vs SpExtra proportion
  438.                                                             ; New for System 7.0: 
  439. smDoubleByte                    EQU        36                    ;Flag for double-byte script installed
  440. smKCHRCache                        EQU        38                    ;Returns pointer to KCHR cache
  441. smRegionCode                    EQU        40                    ;Returns current region code (verXxx)
  442. smKeyDisableState                EQU        42                    ;Returns current keyboard disable state
  443.                                                             ; GetScriptVariable and SetScriptVariable verbs. 
  444.                                                             ; Note: Verbs private to script systems are negative, while 
  445.                                                             ; those general across script systems are non-negative. 
  446. smScriptVersion                    EQU        0                    ;Script software version
  447. smScriptMunged                    EQU        2                    ;Script entry changed count
  448. smScriptEnabled                    EQU        4                    ;Script enabled flag
  449. smScriptRight                    EQU        6                    ;Right to left flag
  450. smScriptJust                    EQU        8                    ;Justification flag
  451. smScriptRedraw                    EQU        10                    ;Word redraw flag
  452. smScriptSysFond                    EQU        12                    ;Preferred system font
  453. smScriptAppFond                    EQU        14                    ;Preferred Application font
  454. smScriptBundle                    EQU        16                    ;Beginning of itlb verbs
  455. smScriptNumber                    EQU        16                    ;Script itl0 id
  456. smScriptDate                    EQU        18                    ;Script itl1 id
  457. smScriptSort                    EQU        20                    ;Script itl2 id
  458. smScriptFlags                    EQU        22                    ;flags word
  459. smScriptToken                    EQU        24                    ;Script itl4 id
  460. smScriptEncoding                EQU        26                    ;id of optional itl5, if present
  461. smScriptLang                    EQU        28                    ;Current language for script
  462.  
  463. smScriptNumDate                    EQU        30                    ;Script Number/Date formats.
  464. smScriptKeys                    EQU        32                    ;Script KCHR id
  465. smScriptIcon                    EQU        34                    ;ID # of SICN or kcs#/kcs4/kcs8 suite
  466. smScriptPrint                    EQU        36                    ;Script printer action routine
  467. smScriptTrap                    EQU        38                    ;Trap entry pointer
  468. smScriptCreator                    EQU        40                    ;Script file creator
  469. smScriptFile                    EQU        42                    ;Script file name
  470. smScriptName                    EQU        44                    ;Script name
  471.                                                             ; There is a hole here for old Kanji private verbs 46-76 
  472.                                                             ; New for System 7.0: 
  473. smScriptMonoFondSize            EQU        78                    ;default monospace FOND (hi) & size (lo)
  474. smScriptPrefFondSize            EQU        80                    ;preferred FOND (hi) & size (lo)
  475. smScriptSmallFondSize            EQU        82                    ;default small FOND (hi) & size (lo)
  476. smScriptSysFondSize                EQU        84                    ;default system FOND (hi) & size (lo)
  477. smScriptAppFondSize                EQU        86                    ;default app FOND (hi) & size (lo)
  478. smScriptHelpFondSize            EQU        88                    ;default Help Mgr FOND (hi) & size (lo)
  479. smScriptValidStyles                EQU        90                    ;mask of valid styles for script
  480. smScriptAliasStyle                EQU        92                    ;style (set) to use for aliases
  481.                                                             ; Special script code values for International Utilities 
  482. iuSystemScript                    EQU        -1                    ; <obsolete>  system script 
  483. iuCurrentScript                    EQU        -2                    ; <obsolete>  current script (for font of grafPort) 
  484.                                                             ; Negative verbs for KeyScript 
  485. smKeyNextScript                    EQU        -1                    ; Switch to next available script 
  486. smKeySysScript                    EQU        -2                    ; Switch to the system script 
  487. smKeySwapScript                    EQU        -3                    ; Switch to previously-used script 
  488.                                                             ; New for System 7.0: 
  489. smKeyNextKybd                    EQU        -4                    ; Switch to next keyboard in current keyscript 
  490.  
  491. smKeySwapKybd                    EQU        -5                    ; Switch to previously-used keyboard in current keyscript 
  492. smKeyDisableKybds                EQU        -6                    ; Disable keyboards not in system or Roman script 
  493. smKeyEnableKybds                EQU        -7                    ; Re-enable keyboards for all enabled scripts 
  494. smKeyToggleInline                EQU        -8                    ; Toggle inline input for current keyscript 
  495. smKeyToggleDirection            EQU        -9                    ; Toggle default line direction (TESysJust) 
  496. smKeyNextInputMethod            EQU        -10                    ; Switch to next input method in current keyscript 
  497. smKeySwapInputMethod            EQU        -11                    ; Switch to last-used input method in current keyscript 
  498. smKeyDisableKybdSwitch            EQU        -12                    ; Disable switching from the current keyboard 
  499. smKeySetDirLeftRight            EQU        -15                    ; Set default line dir to left-right, align left 
  500. smKeySetDirRightLeft            EQU        -16                    ; Set default line dir to right-left, align right 
  501. smKeyRoman                        EQU        -17                    ; Set keyscript to Roman. Does nothing if Roman-only 
  502.                                                             ; system, unlike KeyScript(smRoman) which forces 
  503.                                                             ; an update to current default Roman keyboard 
  504.                                                             ; Bits in the smScriptFlags word 
  505.                                                             ;  (bits above 8 are non-static) 
  506. smsfIntellCP                    EQU        0                    ;Script has intelligent cut & paste
  507. smsfSingByte                    EQU        1                    ;Script has only single bytes
  508. smsfNatCase                        EQU        2                    ;Native chars have upper & lower case
  509. smsfContext                        EQU        3                    ;Script is contextual
  510. smsfNoForceFont                    EQU        4                    ;Script will not force characters
  511. smsfB0Digits                    EQU        5                    ;Script has alternate digits at B0-B9
  512. smsfAutoInit                    EQU        6                    ;Auto initialize the script
  513. smsfUnivExt                        EQU        7                    ;Script is handled by universal extension
  514. smsfSynchUnstyledTE                EQU        8                    ;Script synchronizes for unstyled TE
  515. smsfForms                        EQU        13                    ;Uses contextual forms for letters
  516. smsfLigatures                    EQU        14                    ;Uses contextual ligatures
  517. smsfReverse                        EQU        15                    ;Reverses native text, right-left
  518.                                                             ; Bits in the smGenFlags long. 
  519.                                                             ; First (high-order) byte is set from itlc flags byte. 
  520. smfShowIcon                        EQU        31                    ;Show icon even if only one script
  521. smfDualCaret                    EQU        30                    ;Use dual caret for mixed direction text
  522. smfNameTagEnab                    EQU        29                    ;Reserved for internal use
  523. smfUseAssocFontInfo                EQU        28                    ;Use the associated font info for FontMetrics calls <48>
  524.  
  525.                                                             ; Roman script constants 
  526.                                                             ; The following are here for backward compatibility, but should not be used. 
  527.                                                             ; This information should be obtained using GetScript. 
  528. romanSysFond                    EQU        $3FFF                ;system font id number
  529. romanAppFond                    EQU        3                    ;application font id number
  530. romanFlags                        EQU        $0007                ;roman settings
  531.                                                             ; Script Manager font equates. 
  532. smFondStart                        EQU        $4000                ;start from 16K
  533. smFondEnd                        EQU        $C000                ;past end of range at 48K
  534.                                                             ; Miscellaneous font equates. 
  535. smUprHalfCharSet                EQU        $80                    ;first char code in top half of std char set
  536.                                                             ; Character Set Extensions 
  537. diaeresisUprY                    EQU        $D9
  538. fraction                        EQU        $DA
  539. intlCurrency                    EQU        $DB
  540. leftSingGuillemet                EQU        $DC
  541. rightSingGuillemet                EQU        $DD
  542. fiLigature                        EQU        $DE
  543. flLigature                        EQU        $DF
  544. dblDagger                        EQU        $E0
  545. centeredDot                        EQU        $E1
  546. baseSingQuote                    EQU        $E2
  547. baseDblQuote                    EQU        $E3
  548. perThousand                        EQU        $E4
  549. circumflexUprA                    EQU        $E5
  550.  
  551. circumflexUprE                    EQU        $E6
  552. acuteUprA                        EQU        $E7
  553. diaeresisUprE                    EQU        $E8
  554. graveUprE                        EQU        $E9
  555. acuteUprI                        EQU        $EA
  556. circumflexUprI                    EQU        $EB
  557. diaeresisUprI                    EQU        $EC
  558. graveUprI                        EQU        $ED
  559. acuteUprO                        EQU        $EE
  560. circumflexUprO                    EQU        $EF
  561. appleLogo                        EQU        $F0
  562. graveUprO                        EQU        $F1
  563. acuteUprU                        EQU        $F2
  564. circumflexUprU                    EQU        $F3
  565. graveUprU                        EQU        $F4
  566. dotlessLwrI                        EQU        $F5
  567. circumflex                        EQU        $F6
  568. tilde                            EQU        $F7
  569. macron                            EQU        $F8
  570. breveMark                        EQU        $F9
  571.  
  572. overDot                            EQU        $FA
  573. ringMark                        EQU        $FB
  574. cedilla                            EQU        $FC
  575. doubleAcute                        EQU        $FD
  576. ogonek                            EQU        $FE
  577. hachek                            EQU        $FF                    ; TokenType values 
  578. tokenIntl                        EQU        4                    ;the itl resource number of the tokenizer
  579. tokenEmpty                        EQU        -1                    ;used internally as an empty flag
  580.  
  581. tokenUnknown                    EQU        0                    ;chars that do not match a defined token type
  582. tokenWhite                        EQU        1                    ;white space
  583. tokenLeftLit                    EQU        2                    ;literal begin
  584. tokenRightLit                    EQU        3                    ;literal end
  585. tokenAlpha                        EQU        4                    ;alphabetic
  586. tokenNumeric                    EQU        5                    ;numeric
  587. tokenNewLine                    EQU        6                    ;new line
  588. tokenLeftComment                EQU        7                    ;open comment
  589. tokenRightComment                EQU        8                    ;close comment
  590. tokenLiteral                    EQU        9                    ;literal
  591. tokenEscape                        EQU        10                    ;character escape (e.g. '\' in "\n", "\t")
  592. tokenAltNum                        EQU        11                    ;alternate number (e.g. $B0-B9 in Arabic,Hebrew)
  593. tokenRealNum                    EQU        12                    ;real number
  594. tokenAltReal                    EQU        13                    ;alternate real number
  595. tokenReserve1                    EQU        14                    ;reserved
  596. tokenReserve2                    EQU        15                    ;reserved
  597. tokenLeftParen                    EQU        16                    ;open parenthesis
  598. tokenRightParen                    EQU        17                    ;close parenthesis
  599. tokenLeftBracket                EQU        18                    ;open square bracket
  600. tokenRightBracket                EQU        19                    ;close square bracket
  601.  
  602. tokenLeftCurly                    EQU        20                    ;open curly bracket
  603. tokenRightCurly                    EQU        21                    ;close curly bracket
  604. tokenLeftEnclose                EQU        22                    ;open guillemet
  605. tokenRightEnclose                EQU        23                    ;close guillemet
  606. tokenPlus                        EQU        24
  607. tokenMinus                        EQU        25
  608. tokenAsterisk                    EQU        26                    ;times/multiply
  609. tokenDivide                        EQU        27
  610. tokenPlusMinus                    EQU        28                    ;plus or minus symbol
  611. tokenSlash                        EQU        29
  612. tokenBackSlash                    EQU        30
  613. tokenLess                        EQU        31                    ;less than symbol
  614. tokenGreat                        EQU        32                    ;greater than symbol
  615. tokenEqual                        EQU        33
  616. tokenLessEqual2                    EQU        34                    ;less than or equal, 2 characters (e.g. <=)
  617. tokenLessEqual1                    EQU        35                    ;less than or equal, 1 character
  618. tokenGreatEqual2                EQU        36                    ;greater than or equal, 2 characters (e.g. >=)
  619. tokenGreatEqual1                EQU        37                    ;greater than or equal, 1 character
  620. token2Equal                        EQU        38                    ;double equal (e.g. ==)
  621. tokenColonEqual                    EQU        39                    ;colon equal
  622.  
  623. tokenNotEqual                    EQU        40                    ;not equal, 1 character
  624. tokenLessGreat                    EQU        41                    ;less/greater, Pascal not equal (e.g. <>)
  625. tokenExclamEqual                EQU        42                    ;exclamation equal, C not equal (e.g. !=)
  626. tokenExclam                        EQU        43                    ;exclamation point
  627. tokenTilde                        EQU        44                    ;centered tilde
  628. tokenComma                        EQU        45
  629. tokenPeriod                        EQU        46
  630. tokenLeft2Quote                    EQU        47                    ;open double quote
  631. tokenRight2Quote                EQU        48                    ;close double quote
  632. tokenLeft1Quote                    EQU        49                    ;open single quote
  633. tokenRight1Quote                EQU        50                    ;close single quote
  634. token2Quote                        EQU        51                    ;double quote
  635. token1Quote                        EQU        52                    ;single quote
  636. tokenSemicolon                    EQU        53
  637. tokenPercent                    EQU        54
  638. tokenCaret                        EQU        55
  639. tokenUnderline                    EQU        56
  640. tokenAmpersand                    EQU        57
  641. tokenAtSign                        EQU        58
  642. tokenBar                        EQU        59                    ;vertical bar
  643.  
  644. tokenQuestion                    EQU        60
  645. tokenPi                            EQU        61                    ;lower-case pi
  646. tokenRoot                        EQU        62                    ;square root symbol
  647. tokenSigma                        EQU        63                    ;capital sigma
  648. tokenIntegral                    EQU        64                    ;integral sign
  649. tokenMicro                        EQU        65
  650. tokenCapPi                        EQU        66                    ;capital pi
  651. tokenInfinity                    EQU        67
  652. tokenColon                        EQU        68
  653. tokenHash                        EQU        69                    ;e.g. #
  654. tokenDollar                        EQU        70
  655. tokenNoBreakSpace                EQU        71                    ;non-breaking space
  656. tokenFraction                    EQU        72
  657. tokenIntlCurrency                EQU        73
  658. tokenLeftSingGuillemet            EQU        74
  659. tokenRightSingGuillemet            EQU        75
  660. tokenPerThousand                EQU        76
  661. tokenEllipsis                    EQU        77
  662. tokenCenterDot                    EQU        78
  663. tokenNil                        EQU        127
  664.  
  665. delimPad                        EQU        -2                    ; obsolete, misspelled token names kept for backward compatibility 
  666. tokenTilda                        EQU        44
  667. tokenCarat                        EQU        55
  668.  
  669.                                                             ; Table selectors for GetItlTable 
  670. smWordSelectTable                EQU        0                    ; get word select break table from 'itl2' 
  671. smWordWrapTable                    EQU        1                    ; get word wrap break table from 'itl2' 
  672. smNumberPartsTable                EQU        2                    ; get default number parts table from 'itl4' 
  673. smUnTokenTable                    EQU        3                    ; get unToken table from 'itl4' 
  674. smWhiteSpaceList                EQU        4                    ; get white space list from 'itl4' 
  675. iuWordSelectTable                EQU        0                    ; <obsolete>  get word select break table from 'itl2' 
  676. iuWordWrapTable                    EQU        1                    ; <obsolete>  get word wrap break table from 'itl2' 
  677. iuNumberPartsTable                EQU        2                    ; <obsolete>  get default number parts table from 'itl4' 
  678. iuUnTokenTable                    EQU        3                    ; <obsolete>  get unToken table from 'itl4' 
  679. iuWhiteSpaceList                EQU        4                    ; <obsolete>  get white space list from 'itl4' 
  680. ;  end of stuff moved from Packages.h 
  681.  
  682. tokenOK                            EQU        0                    ; TokenResults 
  683. tokenOverflow                    EQU        1                    ; TokenResults 
  684. stringOverflow                    EQU        2                    ; TokenResults 
  685. badDelim                        EQU        3                    ; TokenResults 
  686. badEnding                        EQU        4                    ; TokenResults 
  687. crash                            EQU        5                    ; TokenResults 
  688. ; typedef SInt8                         TokenResults
  689.  
  690. CharByteTable            RECORD 0
  691. elements                 ds.b    256
  692. sizeof                     EQU *                    ; size:   $100 (256)
  693.                         ENDR
  694.  
  695.  
  696. ; typedef short                         TokenType
  697.  
  698. DelimType                RECORD 0
  699. elements                 ds.w    2
  700. sizeof                     EQU *                    ; size:   $4 (4)
  701.                         ENDR
  702.  
  703.  
  704. CommentType                RECORD 0
  705. elements                 ds.w    4
  706. sizeof                     EQU *                    ; size:   $8 (8)
  707.                         ENDR
  708.  
  709.  
  710. TokenRec                RECORD 0
  711. theToken                 ds.w    1                ; offset: $0 (0)
  712. position                 ds.l    1                ; offset: $2 (2)        ; pointer into original source
  713. length                     ds.l    1                ; offset: $6 (6)        ; length of text in original source
  714. stringPosition             ds.l    1                ; offset: $A (10)        ; Pascal/C string copy of identifier
  715. sizeof                     EQU *                    ; size:   $E (14)
  716.                         ENDR
  717. ; typedef struct TokenRec *                TokenRecPtr
  718.  
  719. TokenBlock                RECORD 0
  720. source                     ds.l    1                ; offset: $0 (0)        ; pointer to stream of characters
  721. sourceLength             ds.l    1                ; offset: $4 (4)        ; length of source stream
  722. tokenList                 ds.l    1                ; offset: $8 (8)        ; pointer to array of tokens
  723. tokenLength                 ds.l    1                ; offset: $C (12)        ; maximum length of TokenList
  724. tokenCount                 ds.l    1                ; offset: $10 (16)        ; number tokens generated by tokenizer
  725. stringList                 ds.l    1                ; offset: $14 (20)        ; pointer to stream of identifiers
  726. stringLength             ds.l    1                ; offset: $18 (24)        ; length of string list
  727. stringCount                 ds.l    1                ; offset: $1C (28)        ; number of bytes currently used
  728. doString                 ds.b    1                ; offset: $20 (32)        ; make strings & put into StringList
  729. doAppend                 ds.b    1                ; offset: $21 (33)        ; append to TokenList rather than replace
  730. doAlphanumeric             ds.b    1                ; offset: $22 (34)        ; identifiers may include numeric
  731. doNest                     ds.b    1                ; offset: $23 (35)        ; do comments nest?
  732. leftDelims                 ds.w    2                ; offset: $24 (36)
  733. rightDelims                 ds.w    2                ; offset: $28 (40)
  734. leftComment                 ds.w    4                ; offset: $2C (44)
  735. rightComment             ds.w    4                ; offset: $34 (52)
  736. escapeCode                 ds.w    1                ; offset: $3C (60)        ; escape symbol code
  737. decimalCode                 ds.w    1                ; offset: $3E (62)
  738. itlResource                 ds.l    1                ; offset: $40 (64)        ; handle to itl4 resource of current script
  739. reserved                 ds.l    8                ; offset: $44 (68)        ; must be zero!
  740. sizeof                     EQU *                    ; size:   $64 (100)
  741.                         ENDR
  742. ; typedef struct TokenBlock *            TokenBlockPtr
  743.  
  744.     IF FOR_SYSTEM7_AND_SYSTEM8_COOPERATIVE THEN
  745. ;
  746. ; pascal short GetSysDirection(void)
  747. ;
  748.     IF ¨ GENERATINGCFM THEN
  749.         Macro
  750.         _GetSysDirection      &dest=(sp)
  751.             move.w            $0BAC,&dest
  752.         EndM
  753.     ELSE
  754.         IMPORT_CFM_FUNCTION GetSysDirection
  755.     ENDIF
  756.  
  757. ;
  758. ; pascal void SetSysDirection(short value)
  759. ;
  760.     IF ¨ GENERATINGCFM THEN
  761.         Macro
  762.         _SetSysDirection      &src=(sp)+
  763.             move.w            &src,$0BAC
  764.         EndM
  765.     ELSE
  766.         IMPORT_CFM_FUNCTION SetSysDirection
  767.     ENDIF
  768.  
  769. ;
  770. ; pascal short FontScript(void )
  771. ;
  772.     IF ¨ GENERATINGCFM THEN
  773.         Macro
  774.         _FontScript
  775.             move.l              #$82000000,-(sp)
  776.             dc.w                $A8B5
  777.         EndM
  778.     ELSE
  779.         IMPORT_CFM_FUNCTION FontScript
  780.     ENDIF
  781.  
  782. ;
  783. ; pascal short IntlScript(void )
  784. ;
  785.     IF ¨ GENERATINGCFM THEN
  786.         Macro
  787.         _IntlScript
  788.             move.l              #$82000002,-(sp)
  789.             dc.w                $A8B5
  790.         EndM
  791.     ELSE
  792.         IMPORT_CFM_FUNCTION IntlScript
  793.     ENDIF
  794.  
  795. ;
  796. ; pascal void KeyScript(short code)
  797. ;
  798.     IF ¨ GENERATINGCFM THEN
  799.         Macro
  800.         _KeyScript
  801.             move.l              #$80020004,-(sp)
  802.             dc.w                $A8B5
  803.         EndM
  804.     ELSE
  805.         IMPORT_CFM_FUNCTION KeyScript
  806.     ENDIF
  807.  
  808. ;
  809. ; pascal Boolean IsCmdChar(const EventRecord *event, short test)
  810. ;
  811.     IF ¨ GENERATINGCFM THEN
  812.         Macro
  813.         _IsCmdChar
  814.             move.l              #$8206FFD0,-(sp)
  815.             dc.w                $A8B5
  816.         EndM
  817.     ELSE
  818.         IMPORT_CFM_FUNCTION IsCmdChar
  819.     ENDIF
  820.  
  821. ;
  822. ; pascal short FontToScript(short fontNumber)
  823. ;
  824.     IF ¨ GENERATINGCFM THEN
  825.         Macro
  826.         _FontToScript
  827.             move.l              #$82020006,-(sp)
  828.             dc.w                $A8B5
  829.         EndM
  830.     ELSE
  831.         IMPORT_CFM_FUNCTION FontToScript
  832.     ENDIF
  833.  
  834. ;
  835. ; pascal long GetScriptManagerVariable(short selector)
  836. ;
  837.     IF ¨ GENERATINGCFM THEN
  838.         Macro
  839.         _GetScriptManagerVariable
  840.             move.l              #$84020008,-(sp)
  841.             dc.w                $A8B5
  842.         EndM
  843.     ELSE
  844.         IMPORT_CFM_FUNCTION GetScriptManagerVariable
  845.     ENDIF
  846.  
  847. ;
  848. ; pascal OSErr SetScriptManagerVariable(short selector, long param)
  849. ;
  850.     IF ¨ GENERATINGCFM THEN
  851.         Macro
  852.         _SetScriptManagerVariable
  853.             move.l              #$8206000A,-(sp)
  854.             dc.w                $A8B5
  855.         EndM
  856.     ELSE
  857.         IMPORT_CFM_FUNCTION SetScriptManagerVariable
  858.     ENDIF
  859.  
  860. ;
  861. ; pascal long GetScriptVariable(short script, short selector)
  862. ;
  863.     IF ¨ GENERATINGCFM THEN
  864.         Macro
  865.         _GetScriptVariable
  866.             move.l              #$8404000C,-(sp)
  867.             dc.w                $A8B5
  868.         EndM
  869.     ELSE
  870.         IMPORT_CFM_FUNCTION GetScriptVariable
  871.     ENDIF
  872.  
  873. ;
  874. ; pascal OSErr SetScriptVariable(short script, short selector, long param)
  875. ;
  876.     IF ¨ GENERATINGCFM THEN
  877.         Macro
  878.         _SetScriptVariable
  879.             move.l              #$8208000E,-(sp)
  880.             dc.w                $A8B5
  881.         EndM
  882.     ELSE
  883.         IMPORT_CFM_FUNCTION SetScriptVariable
  884.     ENDIF
  885.  
  886. ;
  887. ; pascal short CharacterByteType(Ptr textBuf, short textOffset, ScriptCode script)
  888. ;
  889.     IF ¨ GENERATINGCFM THEN
  890.         Macro
  891.         _CharacterByteType
  892.             move.l              #$C2060010,-(sp)
  893.             dc.w                $A8B5
  894.         EndM
  895.     ELSE
  896.         IMPORT_CFM_FUNCTION CharacterByteType
  897.     ENDIF
  898.  
  899. ;
  900. ; pascal short CharacterType(Ptr textBuf, short textOffset, ScriptCode script)
  901. ;
  902.     IF ¨ GENERATINGCFM THEN
  903.         Macro
  904.         _CharacterType
  905.             move.l              #$C2060012,-(sp)
  906.             dc.w                $A8B5
  907.         EndM
  908.     ELSE
  909.         IMPORT_CFM_FUNCTION CharacterType
  910.     ENDIF
  911.  
  912. ;
  913. ; pascal OSErr TransliterateText(Handle srcHandle, Handle dstHandle, short target, long srcMask, ScriptCode script)
  914. ;
  915.     IF ¨ GENERATINGCFM THEN
  916.         Macro
  917.         _TransliterateText
  918.             move.l              #$C20E0018,-(sp)
  919.             dc.w                $A8B5
  920.         EndM
  921.     ELSE
  922.         IMPORT_CFM_FUNCTION TransliterateText
  923.     ENDIF
  924.  
  925. ;
  926. ; pascal Boolean FillParseTable(CharByteTable table, ScriptCode script)
  927. ;
  928.     IF ¨ GENERATINGCFM THEN
  929.         Macro
  930.         _FillParseTable
  931.             move.l              #$C2040022,-(sp)
  932.             dc.w                $A8B5
  933.         EndM
  934.     ELSE
  935.         IMPORT_CFM_FUNCTION FillParseTable
  936.     ENDIF
  937.  
  938. ;
  939. ; pascal Handle GetIntlResource(short theID)
  940. ;
  941.     IF ¨ GENERATINGCFM THEN
  942.         Macro
  943.         _GetIntlResource
  944.             move.w              #$0006,-(sp)
  945.             dc.w                $A9ED
  946.         EndM
  947.     ELSE
  948.         IMPORT_CFM_FUNCTION GetIntlResource
  949.     ENDIF
  950.  
  951. ;
  952. ; pascal void ClearIntlResourceCache(void )
  953. ;
  954.     IF ¨ GENERATINGCFM THEN
  955.         Macro
  956.         _ClearIntlResourceCache
  957.             move.w              #$0018,-(sp)
  958.             dc.w                $A9ED
  959.         EndM
  960.     ELSE
  961.         IMPORT_CFM_FUNCTION ClearIntlResourceCache
  962.     ENDIF
  963.  
  964. ;
  965. ; pascal void GetIntlResourceTable(ScriptCode script, short tableCode, Handle *itlHandle, long *offset, long *length)
  966. ;
  967.     IF ¨ GENERATINGCFM THEN
  968.         Macro
  969.         _GetIntlResourceTable
  970.             move.w              #$0024,-(sp)
  971.             dc.w                $A9ED
  972.         EndM
  973.     ELSE
  974.         IMPORT_CFM_FUNCTION GetIntlResourceTable
  975.     ENDIF
  976.  
  977. ;
  978. ; pascal UniversalProcPtr GetScriptUtilityAddress(short selector, Boolean Before, ScriptCode script)
  979. ;
  980.     IF ¨ GENERATINGCFM THEN
  981.         Macro
  982.         _GetScriptUtilityAddress
  983.             move.l              #$C4040038,-(sp)
  984.             dc.w                $A8B5
  985.         EndM
  986.     ELSE
  987.         IMPORT_CFM_FUNCTION GetScriptUtilityAddress
  988.     ENDIF
  989.  
  990. ;
  991. ; pascal void SetScriptUtilityAddress(short selector, Boolean Before, UniversalProcPtr routineAddr, ScriptCode script)
  992. ;
  993.     IF ¨ GENERATINGCFM THEN
  994.         Macro
  995.         _SetScriptUtilityAddress
  996.             move.l              #$C008003A,-(sp)
  997.             dc.w                $A8B5
  998.         EndM
  999.     ELSE
  1000.         IMPORT_CFM_FUNCTION SetScriptUtilityAddress
  1001.     ENDIF
  1002.  
  1003. ;
  1004. ; pascal UniversalProcPtr GetScriptQDPatchAddress(short trapNum, Boolean Before, Boolean forPrinting, ScriptCode script)
  1005. ;
  1006.     IF ¨ GENERATINGCFM THEN
  1007.         Macro
  1008.         _GetScriptQDPatchAddress
  1009.             move.l              #$C406003C,-(sp)
  1010.             dc.w                $A8B5
  1011.         EndM
  1012.     ELSE
  1013.         IMPORT_CFM_FUNCTION GetScriptQDPatchAddress
  1014.     ENDIF
  1015.  
  1016. ;
  1017. ; pascal void SetScriptQDPatchAddress(short trapNum, Boolean Before, Boolean forPrinting, UniversalProcPtr routineAddr, ScriptCode script)
  1018. ;
  1019.     IF ¨ GENERATINGCFM THEN
  1020.         Macro
  1021.         _SetScriptQDPatchAddress
  1022.             move.l              #$C00A003E,-(sp)
  1023.             dc.w                $A8B5
  1024.         EndM
  1025.     ELSE
  1026.         IMPORT_CFM_FUNCTION SetScriptQDPatchAddress
  1027.     ENDIF
  1028.  
  1029. ;
  1030. ; pascal void SetIntlResource(short refNum, short theID, Handle intlHandle)
  1031. ;
  1032.     IF ¨ GENERATINGCFM THEN
  1033.         Macro
  1034.         _SetIntlResource
  1035.             move.w              #$0008,-(sp)
  1036.             dc.w                $A9ED
  1037.         EndM
  1038.     ELSE
  1039.         IMPORT_CFM_FUNCTION SetIntlResource
  1040.     ENDIF
  1041.  
  1042.     ENDIF
  1043.     IF FOR_SYSTEM7_AND_SYSTEM8_DEPRECATED THEN
  1044. ;
  1045. ; pascal short CharByte(Ptr textBuf, short textOffset)
  1046. ;
  1047.     IF ¨ GENERATINGCFM THEN
  1048.         Macro
  1049.         _CharByte
  1050.             move.l              #$82060010,-(sp)
  1051.             dc.w                $A8B5
  1052.         EndM
  1053.     ELSE
  1054.         IMPORT_CFM_FUNCTION CharByte
  1055.     ENDIF
  1056.  
  1057. ;
  1058. ; pascal short CharType(Ptr textBuf, short textOffset)
  1059. ;
  1060.     IF ¨ GENERATINGCFM THEN
  1061.         Macro
  1062.         _CharType
  1063.             move.l              #$82060012,-(sp)
  1064.             dc.w                $A8B5
  1065.         EndM
  1066.     ELSE
  1067.         IMPORT_CFM_FUNCTION CharType
  1068.     ENDIF
  1069.  
  1070. ;
  1071. ; pascal OSErr Transliterate(Handle srcHandle, Handle dstHandle, short target, long srcMask)
  1072. ;
  1073.     IF ¨ GENERATINGCFM THEN
  1074.         Macro
  1075.         _Transliterate
  1076.             move.l              #$820E0018,-(sp)
  1077.             dc.w                $A8B5
  1078.         EndM
  1079.     ELSE
  1080.         IMPORT_CFM_FUNCTION Transliterate
  1081.     ENDIF
  1082.  
  1083. ;
  1084. ; pascal Boolean ParseTable(CharByteTable table)
  1085. ;
  1086.     IF ¨ GENERATINGCFM THEN
  1087.         Macro
  1088.         _ParseTable
  1089.             move.l              #$82040022,-(sp)
  1090.             dc.w                $A8B5
  1091.         EndM
  1092.     ELSE
  1093.         IMPORT_CFM_FUNCTION ParseTable
  1094.     ENDIF
  1095.  
  1096. ;
  1097. ; pascal TokenResults IntlTokenize(TokenBlockPtr tokenParam)
  1098. ;
  1099.     IF ¨ GENERATINGCFM THEN
  1100.         Macro
  1101.         _IntlTokenize
  1102.             move.l              #$8204FFFA,-(sp)
  1103.             dc.w                $A8B5
  1104.         EndM
  1105.     ELSE
  1106.         IMPORT_CFM_FUNCTION IntlTokenize
  1107.     ENDIF
  1108.  
  1109.     ENDIF
  1110.     IF OLDROUTINENAMES THEN
  1111.     ELSE
  1112.     ENDIF
  1113.     ENDIF ; __SCRIPT__ 
  1114.  
  1115.